qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
↳ QTRS
↳ Non-Overlap Check
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))
QSORT1(.2(x, y)) -> LOWERS2(x, y)
GREATERS2(x, .2(y, z)) -> GREATERS2(x, z)
LOWERS2(x, .2(y, z)) -> LOWERS2(x, z)
QSORT1(.2(x, y)) -> GREATERS2(x, y)
QSORT1(.2(x, y)) -> QSORT1(lowers2(x, y))
QSORT1(.2(x, y)) -> QSORT1(greaters2(x, y))
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
QSORT1(.2(x, y)) -> LOWERS2(x, y)
GREATERS2(x, .2(y, z)) -> GREATERS2(x, z)
LOWERS2(x, .2(y, z)) -> LOWERS2(x, z)
QSORT1(.2(x, y)) -> GREATERS2(x, y)
QSORT1(.2(x, y)) -> QSORT1(lowers2(x, y))
QSORT1(.2(x, y)) -> QSORT1(greaters2(x, y))
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
GREATERS2(x, .2(y, z)) -> GREATERS2(x, z)
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
GREATERS2(x, .2(y, z)) -> GREATERS2(x, z)
[GREATERS1, .1]
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
↳ QDP
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
LOWERS2(x, .2(y, z)) -> LOWERS2(x, z)
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))
The following pairs can be strictly oriented and are deleted.
The remaining pairs can at least by weakly be oriented.
LOWERS2(x, .2(y, z)) -> LOWERS2(x, z)
[LOWERS1, .1]
↳ QTRS
↳ Non-Overlap Check
↳ QTRS
↳ DependencyPairsProof
↳ QDP
↳ DependencyGraphProof
↳ AND
↳ QDP
↳ QDP
↳ QDPOrderProof
↳ QDP
↳ PisEmptyProof
qsort1(nil) -> nil
qsort1(.2(x, y)) -> ++2(qsort1(lowers2(x, y)), .2(x, qsort1(greaters2(x, y))))
lowers2(x, nil) -> nil
lowers2(x, .2(y, z)) -> if3(<=2(y, x), .2(y, lowers2(x, z)), lowers2(x, z))
greaters2(x, nil) -> nil
greaters2(x, .2(y, z)) -> if3(<=2(y, x), greaters2(x, z), .2(y, greaters2(x, z)))
qsort1(nil)
qsort1(.2(x0, x1))
lowers2(x0, nil)
lowers2(x0, .2(x1, x2))
greaters2(x0, nil)
greaters2(x0, .2(x1, x2))